]> git.r.bdr.sh - rbdr/mobius/blame - docs/Hotline login sequence.md
Limit chat message size to 8192 bytes
[rbdr/mobius] / docs / Hotline login sequence.md
CommitLineData
6988a057
JH
1## Hotline v.1.2.3 Login Sequence
2
3### TLDR
4
51. TCP handshake
62. Hotline proto handshake
73. Client fires off:
8
9 a. Login transaction (107)
10
11 b. tranGetUserNameList (300)
12
13 c. tranGetMsg (101)
14
154. Server replies to each
16
17### Long version
18
191. Client -> Server TCP handshake
202. Hotline proto handshake (TRTPHOTL)
213. Client sends Login transaction (107)
22
23 ```
24 00. // flags
25 00 // isReply
26 00 6b // transaction type: Login transaction (107)
27 00 00 00 01 // ID
28 00 00 00 00 // error code
29 00 00 00 13 // total size
30 00 00 00 13 // data size
31
32 00 02 // field count
33
34 00 66 // fieldUserName (102)
35 00 07 // field length
36 75 6e 6e 61 6d 65 64 // unnamed
37
38 00 68 // fieldUserIconID (104)
39 00 02 // field length
40 07 d1 // 1233
41 ```
42
434. Server sends empty reply to login transaction (107)
44
45 00
46 01
47 00 00
48 00 00 00 01
49 00 00 00 00
50 00 00 00 02
51 00 00 00 02
52 00 00
53
54
555. Client sends tranGetUserNameList (300) (with some weird extra data at the end??)
56
57
58 00
59 00
60 01 2c // tranGetUserNameList (300)
61 00 00 00 02 // ID
62 00 00 00 00 // Error Code
63 00 00 00 02
64 00 00 00 02
65 00 00
66 00 00
67 00 65 00 00 00 03 00 00 00 00 00 00
68
69 00 02
70 00 00
71
72 00 02
73 00 00
74
75
76Server sends tranServerMsg
77
78 00
79 00
80 00 68 // tranServerMsg (104)
81 00 00 00 01
82 00 00 00 00
83 00 00 00 a4
84 00 00 00 a4
85
86 00 01
87
88 00 65 // fieldData (101)
89 00 9e
90 54 68 65 20 73 65 72 76 65 72 20 79 6f 75
91 20 61 72 65 20 63 6f 6e 6e 65 63 74 65 64 20 74
92 6f 20 69 73 20 6e 6f 74 20 6c 69 63 65 6e 73 65
93 64 20 61 6e 64 20 69 73 20 66 6f 72 20 65 76 61
94 6c 75 61 74 69 6f 6e 20 75 73 65 20 6f 6e 6c 79
95 2e 20 50 6c 65 61 73 65 20 65 6e 63 6f 75 72 61
96 67 65 20 74 68 65 20 61 64 6d 69 6e 69 73 74 72
97 61 74 6f 72 20 6f 66 20 74 68 69 73 20 73 65 72
98 76 65 72 20 74 6f 20 70 75 72 63 68 61 73 65 20
99 61 20 6c 69 63 65 6e 73 65 64 20 63 6f 70 79 2e
100
101
102## Hotline 1.9.2 Login Sequence
103
104
1051. Client/Server TCP handshake
1062. Hotline Proto handshake
1072. Client sends Login transaction (107)
108 - 105: UserLogin
109 - 106: UserPassword
110 - 160: Version
1113. Server sends reply with no type and fields:
112 - 160: Version
113 - 161: Banner ID
114 - 162: Server Name
1154. Server sends Agreement transaction (109)
1165. Client sends Agreed transaction (121)
117 - 102: User name
118 - 104: User icon ID
119 - 113: Options
120 - 215: Automatic Reponse (optional)
1216. Server sends reply with no type and no fields
1227. Server sends User Access (354)
123
124TBD
125
126```
127
128```